package com.luoyi.util.ovs.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.luoyi.util.ovs.annotation.DataIn;
import com.luoyi.util.ovs.annotation.DataOut;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 
 * 功能说明：流程风险检查 值对象类
 * @author  
 */
@Data
@SuppressWarnings("serial")
@ApiModel(value="流程风险检查", description="流程风险检查")
@JsonIgnoreProperties(ignoreUnknown = true)
public class WorkflowIndexVo implements Serializable {
	
    @ApiModelProperty(name="id", value="主键id")
    private String id;

	@DataOut(columnName = "code")
    @ApiModelProperty(name="code", value="编码")
    private String code;

	@DataIn(columnName = "name", sn = 1, isRequired = "Y")
	@DataOut(columnName = "name")
    @ApiModelProperty(name="name", value="名称")
    private String name;

	@DataIn(columnName = "docType", sn = 2, dataCode = "rim_check_instance_doc_type")
	@DataOut(columnName = "docType", dataCode = "rim_check_instance_doc_type")
    @ApiModelProperty(name="docType", value="单据类型")
    private String docType;

	@DataIn(columnName = "wfCode", sn = 3)
	@DataOut(columnName = "wfCode")
    @ApiModelProperty(name="wfCode", value="业务流程编码")
    private String wfCode;

	@DataIn(columnName = "wfName", sn = 4)
	@DataOut(columnName = "wfName")
    @ApiModelProperty(name="wfName", value="业务流程编码名称")
    private String wfName;

	@DataIn(columnName = "wfNode", sn = 5)
	@DataOut(columnName = "wfNode")
    @ApiModelProperty(name="wfNode", value="流程节点编码")
    private String wfNode;

	@DataIn(columnName = "wfNodeName", sn = 6)
	@DataOut(columnName = "wfNodeName")
    @ApiModelProperty(name="wfNodeName", value="流程节点名称")
    private String wfNodeName;

	@DataIn(columnName = "checkType", sn = 7, dataCode = "rim_check_instance_check_type")
	@DataOut(columnName = "checkType", dataCode = "rim_check_instance_check_type")
    @ApiModelProperty(name="checkType", value="审核类型")
    private String checkType;

    @ApiModelProperty(name="parentId", value="父节点")
    private String parentId;

    @ApiModelProperty(name="levelNo", value="层次代码")
    private String levelNo;

	@DataIn(columnName = "sn", sn = 8)
	@DataOut(columnName = "sn")
    @ApiModelProperty(name="sn", value="序号")
    private Integer sn;

	@DataOut(columnName = "status", dataCode = "YesOrNo")
    @ApiModelProperty(name="status", value="状态")
    private String status;

	@DataIn(columnName = "defaultFlowCode", sn = 9)
	@DataOut(columnName = "defaultFlowCode")
	@ApiModelProperty(name="defaultFlowCode", value="默认的风险检查过程")
	private String defaultFlowCode;

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(name="startDate", value="有效开始时间")
    private Date startDate;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(name="endDate", value="有效结止时间")
    private Date endDate;
	@ApiModelProperty(name="indexDimensionRule", value="勾选指标维度规则，传入编号值")
	private List<String> indexDimensionRule;
	@ApiModelProperty(name="indexFlowCode", value="勾选风险检查过程，传入编号值")
	private List<String> indexFlowCode;

}